﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using BolsaTalentos.BLL;

namespace InterfazBolsaTalentos.Ganeral
{
    public partial class login : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btn_Login_Click(object sender, EventArgs e)
        {
            try
            {
                this.Session["UsuarioDeSesion"] = new UsuarioAdministrativo(this.TextBox_UserName.Text.Trim(), this.TextBox_PassWord.Text.Trim());
                //this.Label_ResultMessage.Text = "se ha logeado de admin";
                Response.Redirect(@"~/Administrador/ControlPanel.aspx");
            }
            catch (Exception)
            {
                try
                {
                    this.Session["UsuarioDeSesion"] = new UsuarioEgresado(this.TextBox_UserName.Text.Trim(), this.TextBox_PassWord.Text.Trim());

                    if (((UsuarioEgresado)this.Session["UsuarioDeSesion"]).FechaPrimerIngreso == null) 
                    {
                        ((UsuarioEgresado)this.Session["UsuarioDeSesion"]).FechaPrimerIngreso = DateTime.Now;
                    }
                    ((UsuarioEgresado)this.Session["UsuarioDeSesion"]).FechaUltimoIngreso = DateTime.Now;

                    ((UsuarioEgresado)this.Session["UsuarioDeSesion"]).Actualizar();

                    //this.Label_ResultMessage.Text = "se ha logeado de egresado";
                    Response.Redirect(@"../Egresado/Perfil.aspx");
                }
                catch (Exception)
                {
                    try
                    {
                        this.Session["UsuarioDeSesion"] = new UsuarioEmpresa(this.TextBox_UserName.Text.Trim(), this.TextBox_PassWord.Text.Trim());
                        this.Label_ResultMessage.Text = "se ha logeado de empresa";

                        if (((UsuarioEmpresa)this.Session["UsuarioDeSesion"]).SiActivo)
                        {
                            if (((UsuarioEmpresa)this.Session["UsuarioDeSesion"]).FechaPrimerIngreso == null)
                            {
                                ((UsuarioEmpresa)this.Session["UsuarioDeSesion"]).FechaPrimerIngreso = DateTime.Now;
                            }
                            ((UsuarioEmpresa)this.Session["UsuarioDeSesion"]).FechaUltimoIngreso = DateTime.Now;

                            ((UsuarioEmpresa)this.Session["UsuarioDeSesion"]).Actualizar();

                            Response.Redirect(@"~/Empresa/Perfil.aspx");
                        }
                        else 
                        {
                            this.Label_ResultMessage.Text = "Su usuario está desactivado";
                            this.TextBox_PassWord.Text = "";
                        }
                    }
                    catch (Exception)
                    {
                        this.Label_ResultMessage.Text = "Error: Revise su nombre de usuario y contraseña o intente nuevamente en unos minutos";
                        this.TextBox_PassWord.Text = "";
                    }
                }
            }

            //<div>
            //    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>	
            //    <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>	
            //    <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>	    
            //</div>
            //this.TextBox1.Text = ((Usuario)this.Session["UsuarioDeSession"]).ID.ToString();
            //this.TextBox2.Text = ((Usuario)this.Session["UsuarioDeSession"]).UserName;
            //this.TextBox3.Text = ((Usuario)this.Session["UsuarioDeSession"]).PassWord;

            //Response.Redirect(@"~/Egresados/Vacantes.aspx");   
            //this.Label_ResultMessage.Text = "le dite al boton!";
        }

    }
}
